home *** CD-ROM | disk | FTP | other *** search
/ Pluspack 1 / Caligari Corporation Pluspack1 1998.iso / TSX_SDK / tsxINC / tsxSobj.h < prev    next >
Encoding:
C/C++ Source or Header  |  1998-01-28  |  2.0 KB  |  61 lines

  1. //******************************************************************************
  2. //    File: tsxSobj.h
  3. //  Module: trueSpace eXtensions API
  4. //   Descr: Definition of tsxSOBJ
  5. //******************************************************************************
  6.  
  7. #ifndef TSXSOBJ_H
  8. #define TSXSOBJ_H
  9.  
  10.  
  11. #include "tsxTypes.h"
  12.  
  13.  
  14. //------------------------------------------------------------------------------
  15. //------------------------------------------------------------------------------
  16.  
  17. // A tsxSOBJ is the most abstract type for objects associated with a
  18. // trueSpace Scene.
  19. // It contains the following information:
  20. //    - Object Type
  21.  
  22. //------------------------------------------------------------------------------
  23. //    Sobj Type
  24. //------------------------------------------------------------------------------
  25.  
  26. // Sobj Type
  27. TSXAPIFN tsxSOBJTYPE tsxSobjGetType( tsxSOBJ* pSobj );
  28.  
  29.  
  30. // e_tsxTRUE if Node is a Sobj
  31. TSXAPIFN tsxBOOL tsxIsSobj( tsxSOBJ* pSobj );
  32.  
  33. // Get the first child of an object.
  34. TSXAPIFN tsxSOBJ* tsxSobjGetFirstChild( tsxSOBJ* pSobj );
  35.  
  36. // Get the last child of an object.
  37. TSXAPIFN tsxSOBJ* tsxSobjGetLastChild( tsxSOBJ* pSobj );
  38.  
  39. // Get the next node of valid tsx Sobj Type
  40. // pSobj is any Calobj
  41. TSXAPIFN tsxSOBJ* tsxSobjGetNext( tsxSOBJ* pSobj );
  42.  
  43. // Get the prev node of valid tsx Sobj Type
  44. // pSobj is any Calobj
  45. TSXAPIFN tsxSOBJ* tsxSobjGetPrev( tsxSOBJ* pSobj );
  46.  
  47. // Add a new child to a parent node.
  48. TSXAPIFN tsxERR tsxSobjAddChild( tsxSOBJ* pParent, tsxSOBJ* pNewChild );
  49.  
  50. //------------------------------------------------------------------------------
  51. //    Manage
  52. //------------------------------------------------------------------------------
  53.  
  54. // Delete and free memory, including internal allocations.
  55. // Also delete all children, if any.
  56. // Erases objects from all Views.
  57. TSXAPIFN void tsxSobjDelete( tsxSOBJ* pSobj );
  58.  
  59. //******************************************************************************
  60. #endif //TSXSOBJ_H
  61.